/*
* 创建线程的方法 1.继承Thread 重写run
* */

/*
* Thread 是java.lang包下的子类,编译器已经自动加载,不需要手动导包
* */
class MyThread extends Thread{

    @Override
    public void run() {
        while(true){
            System.out.println("Hello Thread!");
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                throw new RuntimeException(e);
            }
        }

    }

}

public class Demo1 {
    public static void main(String[] args) throws InterruptedException {
        /*
        * start() 和 Run() 都是Thread类中的成员方法
        * run只是描述了线程的入口(线程要做什么任务)
        * start则是真正调用了系统的Api 在系统中创建了线程,再让线程调用run
        * */

        /*
        * main线程是jvm启动时自动创建的,和其他的线程没有什么特别的区别
        * */

        MyThread thread = new MyThread();

        thread.start();

        while(true){
            System.out.println("main");
            Thread.sleep(1000);
        }

    }
}
